/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package interfacesGraficas.ModeloTablas;

import entidadesNegocio.DetalleListaMateriales;

/**
 *
 * @author diego
 */
public class ModeloTablaListaMateriales extends ModeloTabla {

    public ModeloTablaListaMateriales() {
        super("Código Material", "Nombre Material", "Precio", "Descripción");
        setCellEditable(true);
    }

    @Override
    public Object getValueAt(int rowIndex, int columnIndex) {
        if (getListaElementos() == null) {
            return null;
        }
        DetalleListaMateriales detalleMaterial = (DetalleListaMateriales) getListaElementos().get(rowIndex);

        switch (columnIndex) {
            case 0:
                return detalleMaterial.getMaterial().getCodigoMaterial();
            case 1:
                return detalleMaterial.getMaterial().getNombreMaterial();
            case 2:
                return detalleMaterial.getMontoDetalle().toString();
            case 3:
                return detalleMaterial.getDescripcion();
            default:
                return "";
        }
    }

    @Override
    public void setValueAt(Object value, int rowIndex, int columnIndex) {
        if (columnIndex == 0 || columnIndex == 1) {
            return;
        }

        try {
            if (columnIndex == 2) {
                ((DetalleListaMateriales) getListaElementos().get(rowIndex)).setMontoDetalle(Double.valueOf(value.toString()));
            } else if (columnIndex == 3) {
                ((DetalleListaMateriales) getListaElementos().get(rowIndex)).setDescripcion(value.toString());
            }
        } catch (NumberFormatException numberFormatException) {
            System.out.println("El valor ingresado en celda no es valido");
        }
    }
}
